package main

import (
	"fmt"
	"time"
)

// main
//
//	@Description:一个Go线程上，可以起多个协程
//	Go协程：
//		1.有独立的栈空间
//		2.共享程序堆空间
//		3.调度由用户控制
//		4.协程是轻量级的线程

func main() {
	testPrimeNumber()
}

// testPrimeNumber
//
//	@Description: 测试素数的个数
func testPrimeNumber() {
	start := time.Now().UnixMilli()

	var count int
	for i := 0; i < 90000; i++ {
		if primeNumber(i) {
			count++
		}
	}
	fmt.Println("count=", count)
	end := time.Now().UnixMilli()
	fmt.Println("耗时-毫秒time=", end-start)
}

// primeNumber
//
//	@Description: 判断是否为素数
//	@param num
//	@return bool
func primeNumber(num int) bool {
	if num > 1 {
		for i := 2; i < num; i++ {
			if num%i == 0 {
				return false
			}
		}
		return true
	}
	return false
}
